package com.yic.module.mes.controller.admin.report.vo;

import com.yic.module.qms.api.inspectinfo.dto.InspectInfoCreateReqDTO;
import lombok.*;

import java.math.BigDecimal;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.*;

@Schema(description = "管理后台 - 生产报工创建 Request VO")
@Data
@ToString(callSuper = true)
public class ReportCreateReqVO {

    @Schema(description = "生产排产ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "3076")
    @NotNull(message = "生产排产ID不能为空")
    private Long moId;

    @Schema(description = "报工工序", requiredMode = Schema.RequiredMode.REQUIRED, example = "16293")
    @NotNull(message = "报工工序不能为空")
    private Long moRouteId;

    @Schema(description = "报工数量", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "报工数量不能为空")
    private BigDecimal reportAmount;

    @Schema(description = "协作人")
    private String cooperate;

    @Schema(description = "流水号")
    private String serialNo;

    @Schema(description = "报工类型", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "报工类型不能为空")
    private String reportType;

    @Schema(description = "质检数据")
    private List<InspectInfoCreateReqDTO> entryList;

}
